const app = getApp()
const db = wx.cloud.database()
const _ = db.command
var lastRefresh = Date.now()
// miniprogram/pages/me/me.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    unlogin_base64: ''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    this.setData({ userInfo: app.globalData.userInfo })
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    if (Date.now() - lastRefresh <= 2000) {
      // wx.showToast({
      //   title: '操作过快，请勿频繁刷新',
      //   icon: 'none'
      // })
      console.log("操作过快，略过此次刷新")
      wx.stopPullDownRefresh()
      lastRefresh = Date.now()
      return false
    }
    lastRefresh = Date.now()

    const that = this
    db.collection('users').doc(that.data.userInfo.id).get().then(res => {
      console.log(res)
      app.globalData.userInfo = res.data.userInfo
      app.globalData.userInfo.id = res.data._id
      that.setData({
        userInfo: res.data.userInfo
      })
    }).catch(err => {
      // 用户不存在
    }).finally(res => {
      wx.stopPullDownRefresh()
    })
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  changeInfo(e) {
    if(app.globalData.userInfo.boundInfo) {
      wx.navigateTo({
        url: '/pages/myinfo/myinfo',
      })
    }
    else {
      wx.navigateTo({
        url: '/pages/bind/bind',
      })
    }
  },
  login(e) {
    const that = this

    console.log(e)
    if(e.detail.userInfo && !app.globalData.userInfo.nickName) {
      let userInfo = {
        ...app.globalData.userInfo,
        ...e.detail.userInfo
      }
      db.collection('users').doc(app.globalData.userInfo.id).update({
        data: { userInfo },
        success(res) {
          console.log(res)
          app.globalData.userInfo = userInfo
          that.setData({
            userInfo: app.globalData.userInfo
          })
        },
        fail(err) {
          console.log(err)
        }
      })
    }
  }
})